This invention relates to travel scheduling and pricing, and more particularly to processing low-fare-search queries for air travel planning computer systems.
In travel planning such as for air travel scheduling, flight pricing and low-fare-search, queries are posed by users from travel agent systems, airline reservation agent systems, travel web sites, and airline-specific web sites. Low-fare-search (LFS) queries typically include origin and destination information, time constraints, and additional information including passenger profiles and travel preferences. Travel planning systems respond to these LFS queries and typically return a list of possible tickets that satisfy the query, each a flight combination with price information. Some travel planning systems return answers in a compact form such as through a pricing graph.
Travel planning systems expend considerable computational resources responding to LFS queries. It is not uncommon for a travel planning system to spend more than 30 seconds responding to an LFS query, even for a relatively straightforward round-trip query leaving and returning from specific airports on specific dates. Since travel planning systems may need to answer tens or hundreds of queries per second, they are typically built from expensive farms of hundreds or thousands of computers. It is therefore desirable to reduce the computational and economic costs of responding to LFS queries. It is also desirable to reduce query latency, so that answers are returned to the user as quickly as possible.
One type of caching that is known is caching of airline seat availability data. With airline seat availability data query responses become stale if some change takes place in the remote databases accessed over the network (the airlines' seat availability databases).